.common_btn {
  height: 88rpx;
  background: #346bf8;
  border-radius: 24rpx 24rpx 24rpx 24rpx;

  line-height: 88rpx;
  font-size: 28rpx;
  font-weight: 600;
  color: #ffffff;
  text-align: center;

  &.label_less {
    letter-spacing: 10rpx;
  }

  &.text {
    border: none;
    line-height: 44rpx;
    padding: 0 6rpx;
    font-size: 28rpx;
    color: #346bf8;

    height: unset;
    background: unset;
  }
}

.common_btn_box {
  display: flex;
  flex-shrink: 0;
  padding: 12rpx 24rpx;
  z-index: 2;

  .btn {
    flex: 1;
    margin: 0 12rpx;
    background: grey;
    text-align: center;
    line-height: 64rpx;
    color: white;
    overflow: hidden;
    position: relative;
    border-radius: 8rpx;
  }
}

.is_hover{
  position: relative;
  overflow: hidden;
}

.is_hover::before {
  content: "";
  width: 64rpx;
  height: 64rpx;
  left: calc(50% - 32rpx);
  top: 0;
  position: absolute;
  border-radius: 50%;
  background: white;
  transform: scale(0);
  animation: ripple-animation 0.5s linear;
}

@keyframes ripple-animation {
  80% {
    transform: scale(5);
    opacity: 0.2;
  }

  to {
    transform: scale(10);
    opacity: 0;
  }
}

.common_time {
  position: relative;
  padding-left: 32rpx;

  &::before {
    content: "";
    background: url("/static/main/ic_clock.png") no-repeat center;
    position: absolute;
    left: 0;
    top: 50%;
    /* 50%为自身尺寸的一半 */
    transform: translate(0, -50%);
    -webkit-transform: translate(0, -50%);
    width: 24rpx;
    height: 24rpx;
    background-size: 24rpx;
  }
}

.arrow_right {
  position: relative;
  padding-right: 36rpx;
  /*字体样式*/
  font-size: 28rpx;
  font-weight: 400;
  color: #9da7c0;
  line-height: 40rpx;

  &::after {
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    /* 50%为自身尺寸的一半 */
    transform: translate(0, -50%);
    -webkit-transform: translate(0, -50%);
    width: 32rpx;
    height: 32rpx;
    background: url("/static/main/right.png") no-repeat center;
    background-size: 32rpx;
  }
}

.arrow_expand_ver {
  position: relative;
  padding-right: 40rpx;

  &::after {
    content: "";
    position: absolute;
    right: 0;
    top: 50%;

    transform: translate(0, -50%) rotateZ(90deg);

    width: 40rpx;
    height: 40rpx;
    background: url("/static/main/right.png") no-repeat center;
    background-size: 40rpx;

    transition: all 0.5s;
  }

  &.is_right::after {
    transform: translate(0, -50%);
  }

  &.is_expand::after,
  &.is_expand.is_right::after {
    transform: translate(0, -50%) rotateZ(-90deg);
  }
}

.common_block {
  font-size: 34rpx;
  font-weight: 800;
  color: #0d1f4f;
  line-height: 48rpx;

  padding-left: 32rpx;
  position: relative;

  &::before {
    content: "";
    top: 50%;
    /* 50%为自身尺寸的一半 */
    transform: translate(0, -50%);
    width: 8rpx;
    height: 24rpx;
    background: #346bf8;
    border-radius: 8rpx 8rpx 8rpx 8rpx;
    position: absolute;
    left: 8rpx;
  }
}

.common_tag {
  height: 44rpx;
  border-radius: 8rpx 8rpx 8rpx 8rpx;
  border: 2rpx solid;
  padding: 0 24rpx;
  min-width: 108rpx;

  font-weight: 400;
  font-size: 20rpx;
  line-height: 42rpx;
  box-sizing: border-box;

  &.tag_red {
    color: #f42a42;
    border-color: #f42a42;
    background: rgba(244, 42, 66, 0.05);
  }

  &.tag_green {
    color: #28db9b;
    border-color: #28db9b;
    background: rgba(40, 219, 155, 0.05);
  }

  &.tag_yellow {
    color: #ffb340;
    border-color: #ffb340;
    background: rgba(255, 179, 64, 0.05);
  }

  &.tag_gray {
    color: #0a1532;
    border-color: #dadce0;
    background: #f8f9fb;
  }
}

.common_message_box {
  padding: 24rpx 40rpx;
}

.msg_item {
  display: flex;

  .left {
    flex-shrink: 0;
    height: 40rpx;
    font-weight: 400;
    font-size: 28rpx;
    color: #9da7c0;
    line-height: 40rpx;
    text-align: left;

    min-width: 140rpx;
    word-break: break-all;
    white-space: break-spaces;
  }

  .right {
    flex: 1;
    font-weight: 400;
    font-size: 28rpx;
    color: #0d1f4f;
    line-height: 40rpx;
    text-align: left;
    word-break: break-all;

    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;

    &.line2 {
      white-space: break-spaces;
      overflow: hidden;
      -webkit-line-clamp: 2;
      -webkit-box-orient: vertical;
      text-overflow: ellipsis;
      display: -webkit-box;
    }

    &.all {
      white-space: break-spaces;
      text-overflow: unset;
    }
  }
}

.msg_item + .msg_item {
  margin-top: 8rpx;
}

.common_tab {
  display: flex;
  height: 56rpx;
  padding: 24rpx 40rpx;
  display: flex;

  .tab_item {
    flex: 1;
    height: 56rpx;
    font-size: 28rpx;
    font-weight: 400;
    color: #9da7c0;
    line-height: 40rpx;
    text-align: center;
    position: relative;

    &.is_current {
      color: #346bf8;

      &::after {
        content: "";
        position: absolute;
        width: 24rpx;
        height: 8rpx;
        background: #346bf8;
        border-radius: 8rpx 8rpx 8rpx 8rpx;
        bottom: 0;
        left: 50%;
        transform: translateX(-50%);
      }
    }
  }
}

.common_float_btn {
  width: 80rpx;
  height: 80rpx;
  position: absolute;
  right: 20rpx;
  bottom: 118rpx;

  background: #346bf8;
  border-radius: 50%;
  box-shadow: 0rpx 8rpx 32rpx 0rpx rgba(61, 79, 124, 0.08);

  &::after {
    content: "";
    position: absolute;
    right: 20rpx;
    top: 20rpx;
    width: 40rpx;
    height: 40rpx;
    background: url("/static/main/ic_add_white.png") no-repeat center;
    background-size: 40rpx;
  }

  &.edit::after {
    background: url("/static/main/ic_edit_white.png") no-repeat center;
    background-size: 40rpx;
  }

  &.chart::after {
    background: url("/static/main/ic_chart.png") no-repeat center;
    background-size: 40rpx;
  }
}

.common_float_btn + .common_float_btn {
  bottom: 220rpx;
}

.common_bottom_box {
  background: white;
  border-top: 1rpx solid #e6e6e6;
  padding: 24rpx 40rpx;

  .common_btn {
    height: 88rpx;
    background: #346bf8;
    border-radius: 24px 24px 24px 24px;

    font-weight: 600;
    font-size: 28rpx;
    color: #ffffff;
    line-height: 88rpx;
    text-align: center;

    &.less_label {
      letter-spacing: 40rpx;
    }
  }
}

.is_loading::after {
  content: "";
  width: 32rpx;
  height: 32rpx;
  border-color: rgb(228, 228, 228) rgb(228, 228, 228) rgb(228, 228, 228)
    rgb(199, 199, 199);
  display: inline-flex;
  vertical-align: middle;
  border-radius: 50%;
  border: 2px solid;
  border-color: #e5e5e5 #e5e5e5 #e5e5e5 #8f8d8e;
  animation: rotate 1s linear infinite;
  left: calc(50% - 6px);
  top: 94rpx;
  position: absolute;
  z-index: 2;
}

@keyframes rotate {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }

  100% {
    -webkit-transform: rotate(1turn);
    transform: rotate(1turn);
  }
}
